package com.siwei.mes.entity.experiment;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 * 实验台账消息通知表(ExperimentMessage)实体类
 *
 * @author makejava
 * @since 2024-07-26 22:31:07
 */
@Data
@Accessors(chain = true)
@Table(name = "pk_experiment_message")
@ApiModel(value = "ExperimentMessage", description = "实验台账消息通知表")
public class ExperimentMessage implements Serializable {
    private static final long serialVersionUID = -17425771295282754L;
    /**
     * 主键id
     */
    @Id
    @ApiModelProperty(value = "实验台账消息通知表主键ID", name = "id")
    private Long id;
    /**
     * 类型  1-水泥 2-粉煤灰 3-矿渣粉 4-粗骨料 5-细骨料 6-外加剂 7-混凝土
     */
    @Column(name = "experiment_type")
    @ApiModelProperty(value = "类型  1-水泥 2-粉煤灰 3-矿渣粉 4-粗骨料 5-细骨料 6-外加剂 7-混凝土", name = "experimentType")
    private Long experimentType;
    /**
     * 试验台账id
     */
    @Column(name = "experiment_id")
    @ApiModelProperty(value = "试验台账id", name = "experimentId")
    private Long experimentId;
    /**
     * 试验编号
     */
    @Column(name = "experiment_no")
    @ApiModelProperty(value = "试验编号", name = "experimentNo")
    private String experimentNo;
    /**
     * 状态 1.未读 2.已读
     */
    @Column(name = "state")
    @ApiModelProperty(value = "状态 1.未读 2.已读", name = "state")
    private Integer state;
    /**
     * 创建时间
     */
    @Column(name = "create_time")
    @ApiModelProperty(value = "创建时间", name = "createTime")
    private Date createTime;
    /**
     * 已读人id
     */
    @Column(name = "read_person_id")
    @ApiModelProperty(value = "已读人id", name = "readPersonId")
    private Long readPersonId;
    /**
     * 已读人名称
     */
    @Column(name = "read_person_name")
    @ApiModelProperty(value = "已读人名称", name = "readPersonName")
    private String readPersonName;
    /**
     * 已读时间
     */
    @Column(name = "read_time")
    @ApiModelProperty(value = "已读时间", name = "readTime")
    private Date readTime;

    /**
     * 创建时间
     */
    @Transient
    @ApiModelProperty(value = "开始时间", name = "startTime")
    private Date startTime;

    @Transient
    @ApiModelProperty(value = "类型名称")
    private String experimentTypeName;

    @Transient
    @ApiModelProperty(value = "多个试验类型")
    private List<Integer> experimentTypeList;
}
